package com.xuanzheng.company.entity;

import java.io.Serializable;
import java.sql.Time;
import java.sql.Timestamp;

public class AttendanceSetting implements Serializable {
    private String id;
    private String companyId;
    private Time checkInStartTime;
    private Time checkInEndTime;
    private Time checkOutStartTime;
    private Time checkOutEndTime;
    private Timestamp createTime;
    private Timestamp updateTime;
    
    // 绩点计算相关字段
    private Double maxAttendanceHours;    // 满分打卡累积时长
    private Double attendancePercentage;  // 当月打卡绩点百分比
    private Double taskPercentage;        // 当月任务平均评分百分比
    
    // 额外字段，用于展示
    private String companyName;
    
    public AttendanceSetting() {
    }
    
    // Getters and Setters
    public String getId() {
        return id;
    }
    
    public void setId(String id) {
        this.id = id;
    }
    
    public String getCompanyId() {
        return companyId;
    }
    
    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }
    
    public Time getCheckInStartTime() {
        return checkInStartTime;
    }
    
    public void setCheckInStartTime(Time checkInStartTime) {
        this.checkInStartTime = checkInStartTime;
    }
    
    public Time getCheckInEndTime() {
        return checkInEndTime;
    }
    
    public void setCheckInEndTime(Time checkInEndTime) {
        this.checkInEndTime = checkInEndTime;
    }
    
    public Time getCheckOutStartTime() {
        return checkOutStartTime;
    }
    
    public void setCheckOutStartTime(Time checkOutStartTime) {
        this.checkOutStartTime = checkOutStartTime;
    }
    
    public Time getCheckOutEndTime() {
        return checkOutEndTime;
    }
    
    public void setCheckOutEndTime(Time checkOutEndTime) {
        this.checkOutEndTime = checkOutEndTime;
    }
    
    public Timestamp getCreateTime() {
        return createTime;
    }
    
    public void setCreateTime(Timestamp createTime) {
        this.createTime = createTime;
    }
    
    public Timestamp getUpdateTime() {
        return updateTime;
    }
    
    public void setUpdateTime(Timestamp updateTime) {
        this.updateTime = updateTime;
    }
    
    public String getCompanyName() {
        return companyName;
    }
    
    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }
    
    public Double getMaxAttendanceHours() {
        return maxAttendanceHours;
    }
    
    public void setMaxAttendanceHours(Double maxAttendanceHours) {
        this.maxAttendanceHours = maxAttendanceHours;
    }
    
    public Double getAttendancePercentage() {
        return attendancePercentage;
    }
    
    public void setAttendancePercentage(Double attendancePercentage) {
        this.attendancePercentage = attendancePercentage;
    }
    
    public Double getTaskPercentage() {
        return taskPercentage;
    }
    
    public void setTaskPercentage(Double taskPercentage) {
        this.taskPercentage = taskPercentage;
    }
    
    @Override
    public String toString() {
        return "AttendanceSetting{" +
                "id='" + id + '\'' +
                ", companyId='" + companyId + '\'' +
                ", checkInStartTime=" + checkInStartTime +
                ", checkInEndTime=" + checkInEndTime +
                ", checkOutStartTime=" + checkOutStartTime +
                ", checkOutEndTime=" + checkOutEndTime +
                ", maxAttendanceHours=" + maxAttendanceHours +
                ", attendancePercentage=" + attendancePercentage +
                ", taskPercentage=" + taskPercentage +
                ", createTime=" + createTime +
                ", updateTime=" + updateTime +
                ", companyName='" + companyName + '\'' +
                '}';
    }
} 